The inventors are aware of two prior approaches to coordinating actions of kernel components of an operating system and userspace components executing on the operating system. A first approach incorporates all executable instructions within the kernel. Consequently, the kernel instruction set becomes more difficult to write and maintain, more limited in the services which may be used, and defects in the kernel code may be more serious and may panic the system.
A second approach executes complex operations in userspace without the ability of the kernel to recover from failure. Consequently, system reliability is reduced when userspace code fails.